Step motors, with associated driver circuits and controllers, are widely used for driving mechanical loads through prescribed trajectories. The response of any step motor system, operated in the open loop control mode, is affected by changes in the drive system and the mechanical load. System design considerations include trajectory and load parameters, as well as characteristics of the drive system, and the quality of such system designs is often judged by the degree to which the load response is sensitive to variations in important system component parameters; i.e., by the ability of the system to cope with changes in parameters that include the available pullout torque, the load parameter values, and the initial system conditions.
The drive system and the load parameters for a given application are often fairly well known, and subject to vary over only a limited range; that is so, for example, in medical and office equipment applications. To build more sophisticated systems however (such as expert systems), it is necessary to consider the nature of the effects of small and large parameter variations upon the response of the motor and load, and to consider the specific design choices that influence such sensitivities.
When a step motor system is selected to drive a given load through a defined trajectory, torque utilization (i.e., the maximum fraction of the available pullout torque required to perform the motion under nominal system conditions), is an important consideration; the intended motion trajectory also strongly influences the system sensitivity to changes in at least some parameter values. An effective way to reduce the system sensitivity to changes in inertial load, for example, is to remove from the trajectory the frequency component equal to the nominal system resonance frequency. Similarly, and although friction is generally kept low in precision mechanisms, changes in the Coulomb friction load are now found to influence system response substantially, and to introduce uncertainty as to the initial motor positions; the present invention concerns such friction load effects.
As used herein, the following definitions apply:
Pullout Torque: This is the maximum torque TP that a step motor can provide at a given speed, under steady state conditions, without losing synchronism.
Coulomb Friction: This is a friction load torque, having with an amplitude that is independent of velocity but that always opposes the motion.
Step State: The torque TM of the motor follows from:       T    M    =            T      P        ·          sin      ⁢              (                              2            ⁢            π            ⁢                                          V                C                                            N                V                                              -                      N            ⁢                          xe2x80x83                        ⁢            θ                          )            
xe2x80x83wherein Vc represents the step state, TM is the torque produced by the motor, Nv is the drive system resolution in step states/cycle, N is the polecount of the motor, and xcex8 is the physical position, in radians, of the rotor of the motor relative to the stator. As a practical matter, Vc can be regarded to be the number that commands the phase currents to the motor, and thereby the torque produced. In many step motor systems the content of a pulse counter constitutes the step state Vc; in other such systems the value of Vc is fed directly into the motor driver circuit.
Step Sequence: This is a string of data that specifies the value of the step state Vc as a function of time.
Torque Feedforward: The step sequence that describes the value of Vc as a function of time has two components; one defines the intended position xcex8, and the other, the torque feedforward term, controls the motor torque at that intended position. It is necessary to include a torque feedforward term in the step sequence to ensure that, in normal operation, the motor response under nominal conditions is close to that which is intended.
The torque TRQ required to drive a motor and load through the trajectory equals:       T    RQ    =            α      ⁢              (                              J            L                    +                      J            M                          )              +                  T        C            ⁢              ω                  "LeftBracketingBar"          ω          "RightBracketingBar"                    
where:
xcex1=acceleration
JL=the load inertia
JM=the inertia of the rotor of the motor
Tc=the coulomb friction
xcfx89=the velocity
For all steps resolutions at which two-phase step motor systems are commonly driven, the step state Vc should follow the general equation:       V    C    =                    N        V                    2        ⁢        π              ⁢          (                        N          ⁢                      xe2x80x83                    ⁢          θ                +                              sin                          -              1                                ⁢                                    T              RQ                                      T              P                                          )      
where:
Nv=the drive system resolution
N=the motor polecount
xcex8=the position
TP=the pullout torque at speed xcfx89
The term Nxcex8 in the equation is the position-related term, and the arcsine function is the torque feedforward term.
The objects of the invention are to provide a method for driving an open loop step motor so as to efficiently accommodate variations in the friction load torque of a system including the motor, and to provide a system in which the method is implemented. The objects are attained, in part, by the provision of a method in which a multiplicity of step sequences for driving a motor are so generated that each sequence is characterized as having a torque feedforward ramp-up component that increases gradually from zero, at a time just prior to commencement of intended movement of the motor armature, to a value, at the instant of initial intended armature movement, just sufficient to overcome the nominal Coulomb friction load torque of the system.
Preferably, each step sequence will be further characterized as having a torque feedforward ramp-down component that decreases gradually from the value that overcomes the friction load torque of the system, at the conclusion of intended armature movement, to zero at a time just subsequent to the instant at which intended movement of the armature stops. The duration of the ramp-up and ramp-down components will most desirably be substantially equal to one cycle of the natural resonance frequency of the system.
Other objects of the invention are attained by the provision of a system comprising a step motor and a controller for driving the motor in open loop mode, wherein the controller comprises electronic data processing means programmed for generating a multiplicity of step sequences characterized by having torque feedforward ramp-up and ramp-down components of the nature described. The system may additionally implement the preferred and most desirable embodiments of the method set forth, and may further include means, operatively connected to the controller, for measuring directly the load friction torque of the system.